all: 00-thread 01-thread 02-thread 03-thread 04-join 05-join 06-join \
	07-stack 08-mutex 09-mutex 10-mutex 11-mutex 12-cond

00-thread: 00-thread.c
	gcc 00-thread.c -o 00-thread -lpthread

01-thread: 01-thread.c
	gcc 01-thread.c -o 01-thread -lpthread

02-thread: 02-thread.c
	gcc 02-thread.c -o 02-thread -lpthread

03-thread: 03-thread.c
	gcc 03-thread.c -o 03-thread -lpthread

04-join: 04-join.c
	gcc 04-join.c -o 04-join -lpthread 

05-join: 05-join.c
	gcc 05-join.c -o 05-join -lpthread -lm

06-join: 06-join.c
	gcc 06-join.c -o 06-join -lpthread -lm

07-stack: 07-stack.c
	gcc 07-stack.c -o 07-stack -lpthread

08-mutex: 08-mutex.c
	cc 08-mutex.c -o 08-mutex -lpthread

09-mutex: 09-mutex.c
	cc 09-mutex.c -o 09-mutex -lpthread

10-mutex: 10-mutex.c
	cc 10-mutex.c -o 10-mutex -lpthread

11-mutex: 11-mutex.c
	cc 11-mutex.c -o 11-mutex -lpthread

12-cond: 12-cond.c
	cc 12-cond.c -o 12-cond -lpthread

clean:
	rm -f ??-cond ??-mutex 0?-stack 0?-join 0?-thread pthread forks
